﻿using System;
using System.Collections.Generic;

using System.Text;

namespace LRSS
{


    #region Parameter Hollowness for Delete,ConcentricHelix,Arc,Curve,FoldLine,Trapezia,Other
    class TrapeziaFuzzy_Hollowness
    {
        public static readonly double X1 = 0;
        public static readonly double X2 = 1;
        public static readonly double X3 = 5;
        public static readonly double X4 = 10;
    }
    class ConcentricHelixFuzzy_Hollowness //near to very large
    {
        public static readonly double X1 = 70;
        public static readonly double X2 = 138;
        public static readonly double X3 = 1405;
        public static readonly double X4 = 3248;
    }
    class DeleteFuzzy_Hollowness // very very large
    {
        public static readonly double X1 = 144;
        public static readonly double X2 = 302;
        public static readonly double X3 = 3543;
        public static readonly double X4 = 5000;
    }
    class ArcFuzzy_Hollowness
    {
        public static readonly double X1 = 1.70;
        public static readonly double X2 = 2.80;
        public static readonly double X3 = 6.5;
        public static readonly double X4 = 8;
    }
    class CurveFuzzy_Hollowness
    {
        public static readonly double X1 = 5.5;
        public static readonly double X2 = 14.0;
        public static readonly double X3 = 37;
        public static readonly double X4 = 60;
    }
    class FoldLineFuzzy_Hollowness
    {
        public static readonly double X1 = 15;
        public static readonly double X2 = 16;
        public static readonly double X3 = 100;
        public static readonly double X4 = 180;
    }
    class SpiralFuzzy_Hollowness
    {
        public static readonly double X1 = 34;
        public static readonly double X2 = 85;
        public static readonly double X3 = 350;
        public static readonly double X4 = 600;
    }
    class OtherFuzzy_Hollowness
    {
        public static readonly double X1 = 0;
        public static readonly double X2 = 0;
        public static readonly double X3 = 34;
        public static readonly double X4 = 57;
    }
    #endregion


    #region Parameter Her_Wer for Line
    class LineFuzzy_Her_Wer //near to 0
    {
        public static readonly double X1 = 0;
        public static readonly double X2 = 0;
        public static readonly double X3 = 0.065;
        public static readonly double X4 = 0.09;
    }
    class OtherFuzzy_Her_Wer
    {
        public static readonly double X1 = 0.08;
        public static readonly double X2 = 0.08;
        public static readonly double X3 = 1;
        public static readonly double X4 = 1;

    }
    #endregion

    #region Parameter Pch2_Ach4PI for Circles
    class CirclesFuzzy_Pch2_Ach4PI //near to 1
    {
        public static readonly double X1 = 1.00;
        public static readonly double X2 = 1.00;
        public static readonly double X3 = 1.05;
        public static readonly double X4 = 1.117;
    }
    class ConcentricHelixFuzzy_Pch2_Ach4PI
    {
        public static readonly double X1 = 1.0199;
        public static readonly double X2 = 1.0289;
        public static readonly double X3 = 1.117;
        public static readonly double X4 = 1.26;
    }
    class TrapeziaFuzzy_Pch2_Ach4PI
    {
        public static readonly double X1 = 1.35;
        public static readonly double X2 = 1.41;
        public static readonly double X3 = 1.78;
        public static readonly double X4 = 1.83;
    }
    class OtherFuzzy_Pch2_Ach4PI
    {
        public static readonly double X1 = 1.264;
        public static readonly double X2 = 1.3140;
        public static readonly double X3 = 5;
        public static readonly double X4 = 5;
    }
    #endregion 

    #region Parameter Alt_Alq for Triangle,Diamond
    class TriangleFuzzy_Alt_Alq //near to 1
    {
        public static readonly double X1 = 0.840;
        public static readonly double X2 = 0.894;
        public static readonly double X3 = 1;
        public static readonly double X4 = 1;
    }
    class DiamondFuzzy_Alt_Alq
    {
        public static readonly double X1 = 0.51;
        public static readonly double X2 = 0.535;
        public static readonly double X3 = 0.60;
        public static readonly double X4 = 0.63;
    }
    class OtherFuzzy_Alt_Alq
    {
        public static readonly double X1 = 0.5;
        public static readonly double X2 = 0.52;
        public static readonly double X3 = 0.85;
        public static readonly double X4 = 0.885;
    }
    #endregion
    #region Parameter Alt_Ach for Triangle
    //Todo Alt_Ach do for every Sharp type parameter;
    class TriangleFuzzy_Alt_Ach //near to 1
    {
        public static readonly double X1 = 0.790;
        public static readonly double X2 = 0.84;
        public static readonly double X3 = 1;
        public static readonly double X4 = 1;
    }
    class ArcFuzzy_Alt_Ach
    {
        public static readonly double X1 = 0.480;
        public static readonly double X2 = 0.535;
        public static readonly double X3 = 0.740;
        public static readonly double X4 = 0.808;
    }
    class CurveFuzzy_Alt_Ach
    {
        public static readonly double X1 = 0.489;
        public static readonly double X2 = 0.504;
        public static readonly double X3 = 0.750;
        public static readonly double X4 = 0.899;
    }
    #endregion

    #region Alt_Aer for Curve,Arc
    class CurveFuzzy_Alt_Aer
    {
        public static readonly double X1 = 0.36;
        public static readonly double X2 = 0.41;
        public static readonly double X3 = 0.473;
        public static readonly double X4 = 0.51;
    }
    class ArcFuzzy_Alt_Aer
    {
        public static readonly double X1 = 0.37;
        public static readonly double X2 = 0.488;
        public static readonly double X3 = 0.5;
        public static readonly double X4 = 0.51;
    }
    #endregion

    #region Ach_Aer for Rectangle,Diamond
    class RectangleFuzzy_Ach_Aer //near to 1
    {
        public static readonly double X1 = 0.850;
        public static readonly double X2 = 0.890;
        public static readonly double X3 = 1;
        public static readonly double X4 = 1;
    }
    class TriangleFuzzy_Ach_Aer
    {
        public static readonly double X1 = 0.50;
        public static readonly double X2 = 0.52;
        public static readonly double X3 = 0.585;
        public static readonly double X4 = 0.615;

    }
    class DiamondFuzzy_Ach_Aer
    {
        public static readonly double X1 = 0.60;
        public static readonly double X2 = 0.61;
        public static readonly double X3 = 0.80;
        public static readonly double X4 = 0.87;

    }
    class OtherFuzzy_Ach_Aer
    {
        public static readonly double X1 = 0;
        public static readonly double X2 = 0;
        public static readonly double X3 = 0.880;
        public static readonly double X4 = 0.923;
    }
    #endregion

    #region Alq_Aer for Rectangle,Diamond
    class RectangleFuzzy_Alq_Aer //near to 1
    {
        public static readonly double X1 = 0.752;
        public static readonly double X2 = 0.810;
        public static readonly double X3 = 1;
        public static readonly double X4 = 1;
    }
    class OtherFuzzy_Alq_Aer
    {
        public static readonly double X1 = 0;
        public static readonly double X2 = 0;
        public static readonly double X3 = 0.817;
        public static readonly double X4 = 0.880;
    }
    #endregion


    #region Alq_Ach Ellipse
    class EllipseFuzzy_Alq_Ach
    {
        public static readonly double X1 = 0.65;
        public static readonly double X2 = 0.67;
        public static readonly double X3 = 0.74;
        public static readonly double X4 = 0.77;
    }
    class OtherFuzzy_Alq_Ach
    {
        public static readonly double X1 = 0.0;
        public static readonly double X2 = 0.0;
        public static readonly double X3 = 0.0;
        public static readonly double X4 = 0.0;
    }
    #endregion
    #region Tl_Pch for Delete
    class DeleteFuzzy_Tl_Pch // very large
    {
        public static readonly double X1 = 3.4;
        public static readonly double X2 = 3.8;
        public static readonly double X3 = 16;
        public static readonly double X4 = 100; //Max_Tl; 
    }
    class PentacleFuzzy_Tl_Pch
    {
        public static readonly double X1 = 1.50;
        public static readonly double X2 = 1.573;
        public static readonly double X3 = 1.67;
        public static readonly double X4 = 1.7; //Max_Tl; 
    }
    class UncloseFuzzy_Tl_Pch
    {
        public static readonly double X1 = 0.5;
        public static readonly double X2 = 0.5;
        public static readonly double X3 = 0.90;
        public static readonly double X4 = 0.95;
    }
    class ArcFuzzy_Tl_Pch
    {
        public static readonly double X1 = 0.51;
        public static readonly double X2 = 0.517;
        public static readonly double X3 = 0.823;
        public static readonly double X4 = 0.83;
    }
    class TrapeziaFuzzy_Tl_Pch
    {
        public static readonly double X1 = 0.978;
        public static readonly double X2 = 0.990;
        public static readonly double X3 = 1.026;
        public static readonly double X4 = 1.040;
    }
    class CurveFuzzy_Tl_Pch
    {
        public static readonly double X1 = 0.524;
        public static readonly double X2 = 0.54;
        public static readonly double X3 = 0.72;
        public static readonly double X4 = 0.83;
    }
    class FoldLineFuzzy_Tl_Pch
    {
        public static readonly double X1 = 0.74;
        public static readonly double X2 = 0.88;
        public static readonly double X3 = 1.27;
        public static readonly double X4 = 1.40;
    }
    class OtherFuzzy_Tl_Pch
    {
        public static readonly double X1 = 0;
        public static readonly double X2 = 0;
        public static readonly double X3 = 3.17;
        public static readonly double X4 = 3.75; //Max_Tl; 
    }
    #endregion


    #region Plq_Pch FoldLine, Spiral
    class FoldLineFuzzy_Plq_Pch
    {
        public static readonly double X1 = 0.902;
        public static readonly double X2 = 0.99;
        public static readonly double X3 = 1;
        public static readonly double X4 = 1;
    }
    class SpiralFuzzy_Plq_Pch
    {
        public static readonly double X1 = 0.85;
        public static readonly double X2 = 0.915;
        public static readonly double X3 = 0.987;
        public static readonly double X4 = 1;
    }
    #endregion 
}
